package com.xh.bussiness.xkw.model;


import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

public class XkwQuestion implements Serializable {

    /**
     * 存库id
     */
    private String questionId;

    /**
     *  试题科目ID
     */
    private Integer subjectId;
    /**
     * 试题题干
     */
    private String quesBody;

    /**
     *   地区
     */
    private List<PropertyPriority> areas ;

    /**
     *   更新时间
     */
    private LocalDateTime auditTime ;

    /**
     * 知识点
     *
     */
    private List<List<PropertyPriority>> categories ;

    /**
     *  章节
     */
    private List<List<PropertyPriority>> chapters;
    /**
     * 拆分后的小题列表
     *  map {
     *      childAnswer     string
     *      childBody       string
     *      childOptions    array[QuesOption]
     *      number          integer
     *  }
     */
    private List<Map> childQues ;
    /**
     * 学段
     *  map{
     *      id         integer
     *      name       string
     *      stageId    integer
     *  }
     */
    private List<Map> grades;

    /**
     *  试题id
     */
    private Integer xkwId;
    /**
     * 试题知识点
     */
    private String knowledge ;

    /**
     *  拆分的选项
     */
    private List<PropertyPriority> options;
    /**
     *  试卷类型
     */
    private List<PropertyPriority> paperTypes;
    /**
     *  试题平台id
     */
    private String qbmId;
    /**
     *  试题答案
     */
    private String  quesAnswer ;
    /**
     *  试题属性
     */
    private PropertyPriority quesAttribute;
    /**
     *  包含小题数
     */
    private Integer quesChildNum ;
    /**
     *  试题难度
     */
    private PropertyPriority quesDiff ;
    /**
     *  试题难度值
     */
    private BigDecimal quesDiffValue;
    /**
     *  试题Guid
     */
    private String quesGuid ;
    /**
     *  试题解析
     */
    private String  quesParse ;
    /**
     *  试题分数
     */
    private Integer quesScore ;
    /**
     *  试题星级
     */
    private Integer quesStar ;
    /**
     *  试题类型
     *  map{
     *      canSplit    integer
     *      id          integer
     *      name        string
     *      parentId    integer
     *      selectType  integer
     *  }
     */
    private Map quesType;
    /**
     *  添加日期
     */
    private LocalDateTime time;

    /**
     *  试题名称
     */
    private String title ;

    /**
     *  使用次数
     */
    private Integer useSum;

    /**
     *  试题来源
     */
    private String from;

    public String getQuestionId() {
        return questionId;
    }

    public void setQuestionId(String questionId) {
        this.questionId = questionId;
    }

    public Integer getSubjectId() {
        return subjectId;
    }

    public void setSubjectId(Integer subjectId) {
        this.subjectId = subjectId;
    }

    public String getQuesBody() {
        return quesBody;
    }

    public void setQuesBody(String quesBody) {
        this.quesBody = quesBody;
    }

    public List<PropertyPriority> getAreas() {
        return areas;
    }

    public void setAreas(List<PropertyPriority> areas) {
        this.areas = areas;
    }

    public LocalDateTime getAuditTime() {
        return auditTime;
    }

    public void setAuditTime(LocalDateTime auditTime) {
        this.auditTime = auditTime;
    }

    public List<List<PropertyPriority>> getCategories() {
        return categories;
    }

    public void setCategories(List<List<PropertyPriority>> categories) {
        this.categories = categories;
    }

    public List<List<PropertyPriority>> getChapters() {
        return chapters;
    }

    public void setChapters(List<List<PropertyPriority>> chapters) {
        this.chapters = chapters;
    }

    public List<Map> getChildQues() {
        return childQues;
    }

    public void setChildQues(List<Map> childQues) {
        this.childQues = childQues;
    }

    public List<Map> getGrades() {
        return grades;
    }

    public void setGrades(List<Map> grades) {
        this.grades = grades;
    }

    public Integer getXkwId() {
        return xkwId;
    }

    public void setXkwId(Integer xkwId) {
        this.xkwId = xkwId;
    }

    public String getKnowledge() {
        return knowledge;
    }

    public void setKnowledge(String knowledge) {
        this.knowledge = knowledge;
    }

    public List<PropertyPriority> getOptions() {
        return options;
    }

    public void setOptions(List<PropertyPriority> options) {
        this.options = options;
    }

    public List<PropertyPriority> getPaperTypes() {
        return paperTypes;
    }

    public void setPaperTypes(List<PropertyPriority> paperTypes) {
        this.paperTypes = paperTypes;
    }

    public String getQbmId() {
        return qbmId;
    }

    public void setQbmId(String qbmId) {
        this.qbmId = qbmId;
    }

    public String getQuesAnswer() {
        return quesAnswer;
    }

    public void setQuesAnswer(String quesAnswer) {
        this.quesAnswer = quesAnswer;
    }

    public PropertyPriority getQuesAttribute() {
        return quesAttribute;
    }

    public void setQuesAttribute(PropertyPriority quesAttribute) {
        this.quesAttribute = quesAttribute;
    }

    public Integer getQuesChildNum() {
        return quesChildNum;
    }

    public void setQuesChildNum(Integer quesChildNum) {
        this.quesChildNum = quesChildNum;
    }

    public PropertyPriority getQuesDiff() {
        return quesDiff;
    }

    public void setQuesDiff(PropertyPriority quesDiff) {
        this.quesDiff = quesDiff;
    }

    public BigDecimal getQuesDiffValue() {
        return quesDiffValue;
    }

    public void setQuesDiffValue(BigDecimal quesDiffValue) {
        this.quesDiffValue = quesDiffValue;
    }

    public String getQuesGuid() {
        return quesGuid;
    }

    public void setQuesGuid(String quesGuid) {
        this.quesGuid = quesGuid;
    }

    public String getQuesParse() {
        return quesParse;
    }

    public void setQuesParse(String quesParse) {
        this.quesParse = quesParse;
    }

    public Integer getQuesScore() {
        return quesScore;
    }

    public void setQuesScore(Integer quesScore) {
        this.quesScore = quesScore;
    }

    public Integer getQuesStar() {
        return quesStar;
    }

    public void setQuesStar(Integer quesStar) {
        this.quesStar = quesStar;
    }

    public Map getQuesType() {
        return quesType;
    }

    public void setQuesType(Map quesType) {
        this.quesType = quesType;
    }

    public LocalDateTime getTime() {
        return time;
    }

    public void setTime(LocalDateTime time) {
        this.time = time;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public Integer getUseSum() {
        return useSum;
    }

    public void setUseSum(Integer useSum) {
        this.useSum = useSum;
    }

    public String getFrom() {
        return from;
    }

    public void setFrom(String from) {
        this.from = from;
    }
}
